module variables
    implicit none
    integer(kind=4),parameter :: NX=21, NTEND=4
    real(kind=4),parameter :: x_range(2)=(/-2.0, 10.0/), Dx=(x_range(2)-x_range(1))/(NX-1), &
        &TEND(NTEND)=(/ 1.0, 2.0, 3.0, 4.0 /)
    real(kind=4),save :: t, u(NX), x(NX), a(NX), dt, CFL
    integer,save :: reccount
!$OMP THREADPRIVATE(t,u,x,a,dt,reccount,CFL)
end module variables
